TCP (Transmission Control Protocol) is a widely-used transport protocol for sending information over local area networks (LANs) and wide area networks (WANs), including the Internet. TCP provides reliable, ordered delivery of a stream of bytes from one computer system to another. Many applications rely on TCP, including web applications, email, and file transfer applications.
TCP provides mechanisms for controlling network congestion to reduce packet losses and to promote fair use of network resources. TCP's congestion control features include a slow-start mechanism, in which TCP slowly ramps up bandwidth usage when a TCP connection is initiated. TCP also employs an algorithm that reduces a connection's bandwidth consumption when TCP detects congestion. In the aggregate, when multiple hosts on a network ramp up bandwidth usage slowly and selectively throttle their bandwidth, congestion on that network is generally reduced. However, TCP's congestion control mechanisms can also adversely impact an individual application's performance.